//begin of admin.js
var pages = pages || {};
(function(p) {
  p.admin = {
    articleList: _articleList,
    init: function() {
      window.ArticleList = this.articleList;
      $($('#myTab > li.active > a').attr('href') + ' > div > table').lockTopic();

      $('#myTab > li > a').on('click', function() {
        var filter = $(this).attr('href') + ' > div > table';
        $(filter).lockTopic();
        setTimeout(function() {
          $(filter).lockTopic();
        }, 400);
      });

      $(window).resize(function(e) {
        $($('#myTab > li.active > a').attr('href') + ' > div > table').lockTopic();
      });

      _bind_load_more();

      _languages(); //load languages
    }
  };
  //local function
  function _articleList($scope) {
    $.ajax({
      url: 'api.asp',
      type: 'POST',
      data: {
        "action": "getJsonList"
      },
      dataType: 'json',
      timeout: 1000,
      async: false,
      error: function() {
        setTimeout(ArticleList($scope), 500);
      },
      success: function(result) {
        //do some thing is better
        $scope.funclist = result;
      }
    });
    $scope.del = function(id) {
      if (!confirm("是否真的删除" + $("#func_" + id).find("td[content='函数名']").val())) {
        return;
      }
      $.ajax({
        url: "api.asp",
        type: "post",
        data: {
          "action": "delItem",
          "id": id
        },
        success: function(data) {
          var oRet = pages.common.parseJSON(data);
          if (oRet) {
            if (oRet.ref == "ok") {
              $("#func_" + id).hide(1000);
            }
          }
        }
      });
    };
  }
  //bind load
  function _bind_load_more() {
    //访问列表自动加载
    $('.visitlog-mng').scroll(function() {
      var totalHeight = $('#log_list').height();
      var currentScroll = $(this).scrollTop();
      var windowHeight = $(this).height();
      if (currentScroll + windowHeight >= totalHeight) {
        //do load more
        if (window.visitlog_loading == true) {
          return;
        }
        window.visitlog_loading == true
        var last_id = $('#log_list').find('tr').last().attr('id');
        $.post('/api.asp', {
          "action": "admin.visitlog.load_more",
          "id": last_id,
          "ordersequence": 'desc'
        }).success(function(data) {
          var arrData = pages.common.parseJSON(data);
          var rows = [];
          if (arrData && arrData.length > 0) {
            for (var i = 0; i < arrData.length; i++) {
              rows.push(pages.common.json2html(_create_log_rows(arrData[i])));
            };
          }
          $('#log_list').append(rows);
          window.visitlog_loading == false;
        }).error(function(data) {
          window.visitlog_loading == false;
        });
      }
    });
  }

  function _create_log_rows(rowJson) {
    return {
      'tagName': 'tr',
      'attributes': {
        'style': 'font-size: 9pt',
        'id': rowJson.id
      },
      'children': [{
        'tagName': 'td',
        'attributes': {
          'content': '序号',
          'title': rowJson.id
        },
        'content': rowJson.id
      }, {
        'tagName': 'td',
        'attributes': {
          'content': '时间',
          'title': rowJson.visit_at
        },
        'content': rowJson.visit_at
      }, {
        'tagName': 'td',
        'attributes': {
          'content': '访问页面',
          'title': 'http://' + rowJson.visit_page
        },
        'children': [{
          'tagName': 'a',
          'attributes': {
            'href': 'http://' + rowJson.visit_page,
            'target': '_blank'
          },
          'content': 'http://' + rowJson.visit_page
        }]
      }, {
        'tagName': 'td',
        'attributes': {
          'content': '来源页面',
          'title': rowJson.visit_from
        },
        'children': [{
          'tagName': 'a',
          'attributes': {
            'href': rowJson.visit_from,
            'target': '_blank'
          },
          'content': rowJson.visit_from
        }]
      }, {
        'tagName': 'td',
        'attributes': {
          'content': 'IP'
        },
        'content': rowJson.visit_ip
      }, {
        'tagName': 'td',
        'attributes': {
          'content': '身份'
        },
        'content': rowJson.role
      }, {
        'tagName': 'td',
        'attributes': {
          'content': 'GET',
          'title': rowJson.get_params
        },
        'content': rowJson.get_params
      }, {
        'tagName': 'td',
        'attributes': {
          'content': 'POST',
          'title': rowJson.post_params
        },
        'content': rowJson.post_params
      }]
    };
  }

  function _languages() {
    $.post('/api.asp', {
      "action": "admin.languages.list"
    }).success(function(data) {
      var arrData = pages.common.parseJSON(data);
      if (arrData && arrData.length > 0) {
        var selectJson = {
          'tagName': 'select',
          'attributes': {
            'id': 'languages'
          },
          'children': [{
            'tagName': 'option',
            'attributes': {
              'selected': null,
              'value': ''
            },
            'content': ''
          }]
        };
        $(arrData).each(function() {
          selectJson.children.push({
            'tagName': 'option',
            'attributes': {
              'value': this.lanname
            },
            'content': this.lanname
          });
        });
        $('.language-current').append(pages.common.json2html(selectJson));
      }
    }).error(function(data) {});
  }

})(pages);
//end of admin.js